package com.bjpowernode.boss.common.event;

import com.bjpowernode.boss.mvc.model.mail.MailProperty;
import org.springframework.context.ApplicationEvent;

/**
 * 创建 自定义事件类
 * 1.创建自定义事件类，继承ApplicationEvent， 重写构造方法。 可在类中自定义需要的属性，方法。
 * 2.创建事件监听器类， 一般叫做XXXListener , 对指定的事件感兴趣。实现ApplicationListener接口
 * 	---> 在里面编写 事件发生时执行的方法
 * 	--->  使用@Component注解添加到容器中
 * 3.发布事件Spring 提供的ApplicationEventPublisher来发布自定义事件
 * 	--->在实用类中 添加applicationEventPublisher的bean对象
 * 	---> 通过 new自定义事件类对象 , 调用applicationEventPublisher的bean对象的方法
 */
public class UserConfigMailEvent extends ApplicationEvent {
    // 要传输的数据
    private MailProperty mailPropertyMsg;

    public UserConfigMailEvent(Object source) {
        super(source);
    }

    public UserConfigMailEvent(Object source, MailProperty mailPropertyMsg) {
        super(source);
        this.mailPropertyMsg = mailPropertyMsg;
    }

    public MailProperty getMailPropertyMsg() {
        return mailPropertyMsg;
    }
}
